package com.wzdigit.wms.basic.client.response.transfer;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 发货单明细,GDN=Goods Delivery Notes
 * </p>
 *
 * @author 
 * @since 2021-02-22
 */
@Data
@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler", "fieldHandler" }, ignoreUnknown = false)
public class GdnDtlListResponse implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 发货单明细ID
     */
    @ApiModelProperty("发货单明细ID")
    private Integer gdnDtlId;

    /**
     * 发货单行号
     */
    @ApiModelProperty("发货单行号")
    private Integer gdnLineNo;

    /**
     * 装柜顺序
     */
    @ApiModelProperty("装柜顺序")
    private Integer ctnrSequence;
    
    /**
     * 来源发货通知单行号
     */
    @ApiModelProperty("来源发货通知单行号")
    private String sourceShipNoticeItem;

    /**
     * 客户型号
     */
    @ApiModelProperty("客户型号")
    private String customerModle;

    /**
     * 机型类别
     */
    @ApiModelProperty("机型类别")
    private String modleType;

    /**
     * 采购订单号
     */
    @ApiModelProperty("采购订单号")
    private String poNo;

    /**
     * 采购订单号
     */
    @ApiModelProperty("参考订单号")
    private String refPoNo;

    /**
     * 采购订单行号
     */
    @ApiModelProperty("采购订单行号")
    private String poLineNo;

    /**
     * 销售订单号
     */
    @ApiModelProperty("销售订单号")
    private String soNo;

    /**
     * 销售订单行号
     */
    @ApiModelProperty("销售订单行号")
    private String soLineNo;

    /**
     * 参考销售订单号
     */
    @ApiModelProperty("参考销售订单号")
    private String refSoNo;

    /**
     * 参考销售订单行号
     */
    @ApiModelProperty("参考销售订单行号")
    private String refSoLineNo;

    /**
     * 订单数量
     */
    @ApiModelProperty("订单数量")
    private BigDecimal orderQty;

    /**
     * 预配数量
     */
    @ApiModelProperty("预配数量")
    private BigDecimal preAlocQty;
    
    /**
     * 拣货数量
     */
    @ApiModelProperty("拣货数量")
    private BigDecimal pickQty;

    /**
     * 发货数量
     */
    @ApiModelProperty("发货数量")
    private BigDecimal shipQty;

    /**
     * 拣货任务生成标记
     */
    @ApiModelProperty("拣货任务生成标记（1：是、0：否）")
    private Integer pickTaskFlag;
    
    /**
     * 排柜标识，0/空：未排柜，1：已排柜
     */
    @ApiModelProperty("排柜标识，0/空：未排柜，1：已排柜")
    private Integer arrangeCtnrFlag;
    
    /**
     * 状态
     */
    @ApiModelProperty("状态")
    private Integer status;
    
    /**
     * 仓库名称
     */
    @ApiModelProperty("仓库名称")
    private String whsName;
    
    /**
     * 货品编码
     */
    @ApiModelProperty("货品编码")
    private String skuCode;

    /**
     * 货品规格
     */
    @ApiModelProperty("货品规格")
    private String skuSpec;
    
    /**
     * 货品描述
     */
    @ApiModelProperty("货品描述")
    private String skuDescCn;
    
    /**
     * 库存总数
     */
    @ApiModelProperty("库存总数")
    private BigDecimal inventoryQty;
    
    /**
     * 总订单数量
     */
    @ApiModelProperty("总订单数量")
    private BigDecimal totalOrderQty;

    /**
     * 总发货数量
     */
    @ApiModelProperty("总发货数量")
    private BigDecimal totalShipQty;
    
    /**
     * 是否可以【分配库存】
     */
    @ApiModelProperty("是否可以【分配库存】")
    private Boolean allowAloc;
    
    /**
     * 是否可以【取消分配】
     */
    @ApiModelProperty("是否可以【取消分配】")
    private Boolean cancelAloc;
    
    /**
     * 是否可以【排柜】
     */
    @ApiModelProperty("是否可以【排柜】")
    private Boolean cancelRowCtnrloading;
    
    /**
     * 需要加装配管
     */
    @ApiModelProperty("需要加装配管")
    private String gdnRef1;
    
    /**
     * 是否可以下发拣货说明
     */
    @ApiModelProperty("是否可以下发拣货说明")
    private String isCreatePicktaskText;

    /**
     * 来源单行号
     */
    @ApiModelProperty("来源单行号")
    private String gdnRef5;

    @ApiModelProperty("单位")
    private String unit ;

    @ApiModelProperty("创建人")
    private String createUser;

    @ApiModelProperty("创建时间")
    private Date createTime;


}
